[INFO] cloning repository https://github.com/FGlazov/CryptoPals-Rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/FGlazov/CryptoPals-Rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFGlazov%2FCryptoPals-Rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFGlazov%2FCryptoPals-Rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4349868675c55b883b32d32bb2b681b63b134351
[INFO] checking FGlazov/CryptoPals-Rust against master#cfbc6d4cf1acbac5c025acf8ed68929caa551df3 for pr-75494-beta
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFGlazov%2FCryptoPals-Rust" "/workspace/builds/worker-7/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/FGlazov/CryptoPals-Rust on toolchain cfbc6d4cf1acbac5c025acf8ed68929caa551df3
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/FGlazov/CryptoPals-Rust
[INFO] finished tweaking git repo https://github.com/FGlazov/CryptoPals-Rust
[INFO] tweaked toml for git repo https://github.com/FGlazov/CryptoPals-Rust written to /workspace/builds/worker-7/source/Cargo.toml
[INFO] crate git repo https://github.com/FGlazov/CryptoPals-Rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded itertools v0.7.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5a11f87933f16d911bd649e20d2871cd01d22d43f44175943c0a64ad685db795
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "5a11f87933f16d911bd649e20d2871cd01d22d43f44175943c0a64ad685db795", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5a11f87933f16d911bd649e20d2871cd01d22d43f44175943c0a64ad685db795", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a11f87933f16d911bd649e20d2871cd01d22d43f44175943c0a64ad685db795", kill_on_drop: false }`
[INFO] [stdout] 5a11f87933f16d911bd649e20d2871cd01d22d43f44175943c0a64ad685db795
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f61ef1909268ff6ecd7066b70e274f8b75dae20e068454e8b5664cec7dbbbb49
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "f61ef1909268ff6ecd7066b70e274f8b75dae20e068454e8b5664cec7dbbbb49", kill_on_drop: false }`
[INFO] [stderr]     Checking safemem v0.2.0
[INFO] [stderr]     Checking either v1.4.0
[INFO] [stderr]     Checking libc v0.2.36
[INFO] [stderr]     Checking byteorder v1.1.0
[INFO] [stderr]     Checking itertools v0.7.3
[INFO] [stderr]     Checking base64 v0.8.0
[INFO] [stderr]     Checking rand v0.4.2
[INFO] [stderr]     Checking CryptoPals v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::repeating_key_xor`
[INFO] [stdout]   --> src/byte_util.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     use super::repeating_key_xor;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::hamming_distance`
[INFO] [stdout]   --> src/byte_util.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     use super::hamming_distance;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/byte_util.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::sub_bytes`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     use super::sub_bytes;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::inv_sub_bytes`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     use super::inv_sub_bytes;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `byte_util`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     use byte_util;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::shift_rows`
[INFO] [stdout]   --> src/aes/shift_rows.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     use super::shift_rows;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::inv_shift_rows`
[INFO] [stdout]   --> src/aes/shift_rows.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     use super::inv_shift_rows;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/aes/shift_rows.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `byte_util`
[INFO] [stdout]   --> src/aes/shift_rows.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     use byte_util;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]  --> src/aes/mix_columns.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         ((shifted as u8) ^ 0x1b)
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]  --> src/aes/mix_columns.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         (shifted as u8)
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::g2`
[INFO] [stdout]   --> src/aes/mix_columns.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     use super::g2;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::gf_mult`
[INFO] [stdout]   --> src/aes/mix_columns.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     use super::gf_mult;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::mix_columns`
[INFO] [stdout]   --> src/aes/mix_columns.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |     use super::mix_columns;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::inv_mix_columns`
[INFO] [stdout]   --> src/aes/mix_columns.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     use super::inv_mix_columns;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `byte_util`
[INFO] [stdout]   --> src/aes/mix_columns.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |     use byte_util;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/aes/mix_columns.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::add_round_key`
[INFO] [stdout]  --> src/aes/add_round_key.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use super::add_round_key;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]  --> src/aes/add_round_key.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use string_util::StringUtil;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `byte_util`
[INFO] [stdout]   --> src/aes/add_round_key.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     use byte_util;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/aes/key_expansion.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::pad_to_16`
[INFO] [stdout]   --> src/aes/pkcs_7_padding.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     use super::pad_to_16;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::depad_from_16`
[INFO] [stdout]   --> src/aes/pkcs_7_padding.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     use super::depad_from_16;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/aes/pkcs_7_padding.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/aes/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     ;
[INFO] [stdout]    |     ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]    --> src/aes/mod.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     use string_util::StringUtil;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]    --> src/aes/mod.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |     use std::io::BufRead;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]    --> src/aes/mod.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |     use std::io::BufReader;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]    --> src/aes/mod.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |     use std::fs::File;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]    --> src/aes/mod.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |     use std::path::PathBuf;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64`
[INFO] [stdout]    --> src/aes/mod.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |     use base64;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xor_cracker::rating_creator`
[INFO] [stdout]    --> src/aes/mod.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     use xor_cracker::rating_creator;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::is_ecb_aes_ciphertext`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     use super::is_ecb_aes_ciphertext;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     use std::io::BufRead;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     use std::io::BufReader;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     use std::fs::File;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     use std::path::PathBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::crack_single_byte_xor_encryption`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     use super::crack_single_byte_xor_encryption;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::deref`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     use super::deref;
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::detect_single_byte_xor_encryption`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     use super::detect_single_byte_xor_encryption;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::SingleByteXorDecryptionResult`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use super::SingleByteXorDecryptionResult;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string_util::StringUtil`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     use string_util::StringUtil;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     use std::io::BufRead;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use std::io::BufReader;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     use std::fs::File;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |     use std::path::PathBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `base64`
[INFO] [stdout]   --> src/xor_cracker/repeating_xor_cracker.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |     use base64;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufRead`
[INFO] [stdout]    --> src/xor_cracker/repeating_xor_cracker.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |     use std::io::BufRead;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]    --> src/xor_cracker/repeating_xor_cracker.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     use std::io::BufReader;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]    --> src/xor_cracker/repeating_xor_cracker.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     use std::fs::File;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]    --> src/xor_cracker/repeating_xor_cracker.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     use std::path::PathBuf;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]  --> src/aes/mix_columns.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         ((shifted as u8) ^ 0x1b)
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]  --> src/aes/mix_columns.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         (shifted as u8)
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/aes/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     ;
[INFO] [stdout]    |     ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `from_slice`
[INFO] [stdout]   --> src/byte_util.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn from_slice(bytes: &[u8]) -> [u8; 16] {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `from_slice_4`
[INFO] [stdout]   --> src/byte_util.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn from_slice_4(bytes: &[u8]) -> [u8; 4] {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `to_u32`
[INFO] [stdout]   --> src/byte_util.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn to_u32(b1: u8, b2: u8, b3: u8, b4: u8) -> u32 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `LOOKUP_TABLE`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / const LOOKUP_TABLE: [u8; 256] = [
[INFO] [stdout] 3  | |     0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 0x30, 0x01, 0x67, 0x2B, 0xFE, 0xD7, 0xAB, 0x76,
[INFO] [stdout] 4  | |     0xCA, 0x82, 0xC9, 0x7D, 0xFA, 0x59, 0x47, 0xF0, 0xAD, 0xD4, 0xA2, 0xAF, 0x9C, 0xA4, 0x72, 0xC0,
[INFO] [stdout] 5  | |     0xB7, 0xFD, 0x93, 0x26, 0x36, 0x3F, 0xF7, 0xCC, 0x34, 0xA5, 0xE5, 0xF1, 0x71, 0xD8, 0x31, 0x15,
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | |     0x8C, 0xA1, 0x89, 0x0D, 0xBF, 0xE6, 0x42, 0x68, 0x41, 0x99, 0x2D, 0x0F, 0xB0, 0x54, 0xBB, 0x16
[INFO] [stdout] 19 | | ];
[INFO] [stdout]    | |__^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `INV_LOOKUP_TABLE`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / const INV_LOOKUP_TABLE: [u8; 256] = [
[INFO] [stdout] 22 | |     0x52, 0x09, 0x6A, 0xD5, 0x30, 0x36, 0xA5, 0x38, 0xBF, 0x40, 0xA3, 0x9E, 0x81, 0xF3, 0xD7, 0xFB,
[INFO] [stdout] 23 | |     0x7C, 0xE3, 0x39, 0x82, 0x9B, 0x2F, 0xFF, 0x87, 0x34, 0x8E, 0x43, 0x44, 0xC4, 0xDE, 0xE9, 0xCB,
[INFO] [stdout] 24 | |     0x54, 0x7B, 0x94, 0x32, 0xA6, 0xC2, 0x23, 0x3D, 0xEE, 0x4C, 0x95, 0x0B, 0x42, 0xFA, 0xC3, 0x4E,
[INFO] [stdout] ...  |
[INFO] [stdout] 37 | |     0x17, 0x2B, 0x04, 0x7E, 0xBA, 0x77, 0xD6, 0x26, 0xE1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0C, 0x7D
[INFO] [stdout] 38 | | ];
[INFO] [stdout]    | |__^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sub_bytes`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub fn sub_bytes(state: &mut [u8]) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `inv_sub_bytes`
[INFO] [stdout]   --> src/aes/sub_bytes.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn inv_sub_bytes(state: &mut [u8]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `AesWrapper`
[INFO] [stdout]  --> src/aes/wrapper.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AesWrapper {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `encrypt`
[INFO] [stdout]   --> src/aes/wrapper.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn encrypt(&self, plaintext: Vec<u8>) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/aes/wrapper.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new() -> AesWrapper {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `shift_rows`
[INFO] [stdout]  --> src/aes/shift_rows.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn shift_rows(state: &mut [u8]) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `inv_shift_rows`
[INFO] [stdout]  --> src/aes/shift_rows.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn inv_shift_rows(state: &mut [u8]) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `shift_rows_helper`
[INFO] [stdout]   --> src/aes/shift_rows.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn shift_rows_helper(state: &mut [u8], inverted: bool) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `g2`
[INFO] [stdout]  --> src/aes/mix_columns.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn g2(byte: u8) -> u8 {
[INFO] [stdout]   |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `gf_mult`
[INFO] [stdout]   --> src/aes/mix_columns.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn gf_mult(factor: u8, byte: u8) -> u8 {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `mix_columns`
[INFO] [stdout]   --> src/aes/mix_columns.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn mix_columns(state: &mut [u8]) {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `inv_mix_columns`
[INFO] [stdout]   --> src/aes/mix_columns.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn inv_mix_columns(state: &mut [u8]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `add_round_key`
[INFO] [stdout]  --> src/aes/add_round_key.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn add_round_key(state: &mut [u8], words: &[u8]) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `RCON_TABLE`
[INFO] [stdout]   --> src/aes/key_expansion.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout] 4  | / const RCON_TABLE: [u8; 256] = [
[INFO] [stdout] 5  | |     0x8d, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a,
[INFO] [stdout] 6  | |     0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91, 0x39,
[INFO] [stdout] 7  | |     0x72, 0xe4, 0xd3, 0xbd, 0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a,
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | |     0x61, 0xc2, 0x9f, 0x25, 0x4a, 0x94, 0x33, 0x66, 0xcc, 0x83, 0x1d, 0x3a, 0x74, 0xe8, 0xcb, 0x8d
[INFO] [stdout] 21 | | ];
[INFO] [stdout]    | |__^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `key_expansion`
[INFO] [stdout]   --> src/aes/key_expansion.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn key_expansion(key: &[u8]) -> [u8; 176] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `rot_word`
[INFO] [stdout]   --> src/aes/key_expansion.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn rot_word(word: u32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `sub_word`
[INFO] [stdout]   --> src/aes/key_expansion.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn sub_word(word: u32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bytes`
[INFO] [stdout]   --> src/aes/key_expansion.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn bytes(word: u32) -> [u8; 4] {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `pad_to_16`
[INFO] [stdout]  --> src/aes/pkcs_7_padding.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn pad_to_16(text: &mut Vec<u8>) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `depad_from_16`
[INFO] [stdout]  --> src/aes/pkcs_7_padding.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn depad_from_16(text: &mut Vec<u8>) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `encrypt_exact`
[INFO] [stdout]   --> src/aes/mod.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn encrypt_exact(plaintext: &[u8], key: &[u8]) -> [u8; 16] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `decrypt_exact`
[INFO] [stdout]   --> src/aes/mod.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn decrypt_exact(ciphertext: &[u8], key: &[u8]) -> [u8; 16] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `encrypt_ecb`
[INFO] [stdout]   --> src/aes/mod.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn encrypt_ecb(plaintext: Vec<u8>, key: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `decrypt_ecb`
[INFO] [stdout]   --> src/aes/mod.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn decrypt_ecb(ciphertext: Vec<u8>, key: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `encrypt_cbc`
[INFO] [stdout]   --> src/aes/mod.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn encrypt_cbc(plaintext: Vec<u8>, key: &[u8], iv: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `decrypt_cbc`
[INFO] [stdout]    --> src/aes/mod.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub fn decrypt_cbc(ciphertext: Vec<u8>, key: &[u8], iv: &[u8]) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `xor`
[INFO] [stdout]    --> src/aes/mod.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn xor(a: &[u8], b: &[u8]) -> [u8; 16] {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `is_ecb_aes_ciphertext`
[INFO] [stdout]  --> src/aes_cracker/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn is_ecb_aes_ciphertext(bytes: &Vec<u8>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `get_block_cipher_detect_string`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn get_block_cipher_detect_string() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `encrypt_with_ecb_or_cbc`
[INFO] [stdout]   --> src/aes_cracker/mod.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn encrypt_with_ecb_or_cbc(plaintext: &Vec<u8>) -> (Vec<u8>, bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `detect_single_byte_xor_encryption`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn detect_single_byte_xor_encryption<I>(candidates_hex: I) -> Vec<SingleByteXorDecryptionResult>
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `deref`
[INFO] [stdout]   --> src/xor_cracker/single_byte_xor_cracker.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn deref(refed : &Vec<u8>) -> Vec<&u8> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `CryptoPals` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout]   = help: convert the identifier to snake case: `crypto_pals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 91 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `AesWrapper`
[INFO] [stdout]  --> src/aes/wrapper.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AesWrapper {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `encrypt`
[INFO] [stdout]   --> src/aes/wrapper.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn encrypt(&self, plaintext: Vec<u8>) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/aes/wrapper.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new() -> AesWrapper {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `CryptoPals` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout]   = help: convert the identifier to snake case: `crypto_pals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4.58s
[INFO] running `Command { std: "docker" "inspect" "f61ef1909268ff6ecd7066b70e274f8b75dae20e068454e8b5664cec7dbbbb49", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f61ef1909268ff6ecd7066b70e274f8b75dae20e068454e8b5664cec7dbbbb49", kill_on_drop: false }`
[INFO] [stdout] f61ef1909268ff6ecd7066b70e274f8b75dae20e068454e8b5664cec7dbbbb49
